package com.mall.dubbo.api;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.tanhua.model.domain.PmsProductCategory;
import com.tanhua.model.dto.ProductCategoryDto;

import java.util.List;

public interface PmsProductCategoryApi {
    /**
     * 查询所有一级分类及子分类
     * @return
     */
    List<PmsProductCategory> findAll();

    /**
     * 根据parentId 分页查询商品分类
     * @param parentId
     * @param pmsProductCategoryPage
     * @return
     */
    Page<PmsProductCategory> findByParentId(Integer parentId, Page<PmsProductCategory> pmsProductCategoryPage);

    /**
     * 修改导航栏显示状态
     * @param ids
     * @param navStatus
     */
    void updateNavStatus(Integer[] ids, Integer navStatus);

    /**
     * 修改显示状态
     * @param ids   必须有值
     * @param showStatus 必须有值    0不显示  1显示
     * @return
     */
    void updateShowStatus(Integer[] ids, Integer showStatus);

    /**
     * 添加商品分类
     * @param productCategoryDto
     * @return
     *
     * 这个写的不一定对,后面再看
     */
    void create(ProductCategoryDto productCategoryDto);
    /**
     * 根据id获取商品分类
     * @param id
     * @return
     */
    PmsProductCategory getById(Long id);

    /**
     * 修改商品分类
     * @param id
     * @return
     */
    void updateById(Long id, ProductCategoryDto productCategoryDto);

    /**
     * 删除商品分类
     * @param id
     * @return
     */
    void delete(Long id);
}
